package com.pureut.order.domain.system.domain;

import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.annotation.JsonFormat;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;
import java.util.Date;

/**
 * @Description 辅料信息实体类
 * @Param
 * @Date 22-11-25
 * @Author hl
 **/
public class MaterialAccessories {

    /** id */
    private long materialId;

    /** 辅料编码 */
    private String materialCode;

    /** 辅料名称 */
    private String materialName;

    /** 辅料规格 */
    private String materialSpec;

    /** 辅料状态 */
    private int materialState;

    /** 辅料类别 */
    private int materialType;

    /** 辅料产地 */
    private String materialPlace;

    /** 保质期 */
    private int materialQuality;

    /** 过期提醒 */
    private int materialOverdue;

    /** 复检日期 */
    private int materialInspection;

    /** 复检提醒 */
    private int materialReminder;

    /** 最小库存提醒 */
    private int materialMinSecurity;

    /** 单位 */
    private int materialUnit;

    /** 超发 */
    private int materialHair;

    /** 超收 */
    private int materialClosed;

    /** 供应商id */
    private long materialSuppliers;

    /** 创建人 */
    private String createBy;

    private JSONObject alarmCode;

    private String beginTime;

    private String endTime;

    public String getbeginTime() {
        return beginTime;
    }

    public void setbeginTime(String beginTime) {
        this.beginTime = beginTime;
    }

    public String getEndTime() {
        return endTime;
    }

    public void setEndTime(String endTime) {
        this.endTime = endTime;
    }

    public JSONObject getAlarmCode() {
        return alarmCode;
    }

    public void setAlarmCode(JSONObject alarmCode) {
        this.alarmCode = alarmCode;
    }

    public String getMaterialPlace() {
        return materialPlace;
    }

    public void setMaterialPlace(String materialPlace) {
        this.materialPlace = materialPlace;
    }

    public int getMaterialQuality() {
        return materialQuality;
    }

    public void setMaterialQuality(int materialQuality) {
        this.materialQuality = materialQuality;
    }

    public int getMaterialOverdue() {
        return materialOverdue;
    }

    public void setMaterialOverdue(int materialOverdue) {
        this.materialOverdue = materialOverdue;
    }

    public int getMaterialInspection() {
        return materialInspection;
    }

    public void setMaterialInspection(int materialInspection) {
        this.materialInspection = materialInspection;
    }

    public int getMaterialReminder() {
        return materialReminder;
    }

    public void setMaterialReminder(int materialReminder) {
        this.materialReminder = materialReminder;
    }

    public int getMaterialMinSecurity() {
        return materialMinSecurity;
    }

    public void setMaterialMinSecurity(int materialMinSecurity) {
        this.materialMinSecurity = materialMinSecurity;
    }

    public int getMaterialUnit() {
        return materialUnit;
    }

    public void setMaterialUnit(int materialUnit) {
        this.materialUnit = materialUnit;
    }

    public int getMaterialHair() {
        return materialHair;
    }

    public void setMaterialHair(int materialHair) {
        this.materialHair = materialHair;
    }

    public int getMaterialClosed() {
        return materialClosed;
    }

    public void setMaterialClosed(int materialClosed) {
        this.materialClosed = materialClosed;
    }

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    public long getMaterialId() {
        return materialId;
    }

    public void setMaterialId(long materialId) {
        this.materialId = materialId;
    }

    public String getMaterialCode() {
        return materialCode;
    }

    public void setMaterialCode(String materialCode) {
        this.materialCode = materialCode;
    }

    @NotBlank(message = "辅料名称不能为空")
    @Size(min = 0, max = 50, message = "编码名称长度不能超过30个汉字")
    public String getMaterialName() {
        return materialName;
    }

    public void setMaterialName(String materialName) {
        this.materialName = materialName;
    }

    public String getMaterialSpec() {
        return materialSpec;
    }

    public void setMaterialSpec(String materialSpec) {
        this.materialSpec = materialSpec;
    }

    public int getMaterialState() {
        return materialState;
    }

    public void setMaterialState(int materialState) {
        this.materialState = materialState;
    }

    public int getMaterialType() {
        return materialType;
    }

    public void setMaterialType(int materialType) {
        this.materialType = materialType;
    }

    public long getMaterialSuppliers() {
        return materialSuppliers;
    }

    public void setMaterialSuppliers(long materialSuppliers) {
        this.materialSuppliers = materialSuppliers;
    }

    public String getCreateBy() {
        return createBy;
    }

    public void setCreateBy(String createBy) {
        this.createBy = createBy;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }


    @Override
    public String toString() {
        return "MaterialAccessories{" +
                "materialId=" + materialId +
                ", materialCode='" + materialCode + '\'' +
                ", materialName='" + materialName + '\'' +
                ", materialSpec='" + materialSpec + '\'' +
                ", materialState=" + materialState +
                ", materialType=" + materialType +
                ", materialPlace='" + materialPlace + '\'' +
                ", materialQuality=" + materialQuality +
                ", materialOverdue=" + materialOverdue +
                ", materialInspection=" + materialInspection +
                ", materialReminder=" + materialReminder +
                ", materialMinSecurity=" + materialMinSecurity +
                ", materialUnit=" + materialUnit +
                ", materialHair=" + materialHair +
                ", materialClosed=" + materialClosed +
                ", materialSuppliers=" + materialSuppliers +
                ", createBy='" + createBy + '\'' +
                ", alarmCode='" + alarmCode + '\'' +
                ", beginTime='" + beginTime + '\'' +
                ", endTime='" + endTime + '\'' +
                ", createTime=" + createTime +
                '}';
    }
}
